Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add make dev-arti as an alternative to C-Tor #7207

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

legoktm
Copy link
Member

@legoktm legoktm commented Aug 1, 2024

Status

Ready for review

Description of Changes

Arti is Tor's RIIR effort, and while it is 1.x, the onion service support is still experimental.

Given that, it is to our (and Tor's) benefit for us to try using Arti in development modes to provide feedback. To that end, using Arti is now possible, in parallel, to the existing C-Tor support.

Running make dev-arti should give exactly the same experience as the existing make dev-tor endpoint, aside from the inital launch, which will be slower since it needs to compile Arti from scratch.

As an intentional choice, we don't version pin Arti since this is an experimental thing, so it's more beneficial we just automatically stay on the latest version and fix breakage instead of needing to constantly bump versions.

Note that make dev-tor is entirely independent from this, so the two commands will serve the dev server on different onion addresses.

As far as the Arti code itself, generating a config.toml file seems much cleaner than adding to torrc and generating .auth files.

Testing

How should the reviewer test this PR?

  • Without this PR, run make dev-tor, see that it's all fine
  • With this PR, run make dev-tor, see that it uses the same onion addresses and is all fine. Basically this PR should not adversely affect the existing dev-tor in any way.
  • With this PR, run make dev-arti, wait a bit for it to all compile, and then it works in just about the same way.
  • Stop the dev server, and then run make dev-arti again, verify it gives you the same onion addresses as the previous run.

Deployment

Any special considerations for deployment? n/a, dev-only

Checklist

  • Linting (make lint) and tests (make test) pass in the development container

While this modifies the dev container, I explicitly didn't try anything in it yet because this is just for interactive use and not for like, running tests and stuff.

@legoktm legoktm changed the title DNM: Power make dev-tor with Arti Add make dev-arti as an alternative to C-Tor Feb 10, 2025
@legoktm legoktm marked this pull request as ready for review February 10, 2025 21:18
@legoktm legoktm requested a review from a team as a code owner February 10, 2025 21:18
@legoktm
Copy link
Member Author

legoktm commented Feb 10, 2025

Marking this as ready for review; I've reworked it to no longer replace make dev-tor entirely, but rather to be an alternative for it.

Arti is Tor's RIIR effort, and while it is 1.x, the onion service
support is still experimental.

Given that, it is to our (and Tor's) benefit for us to try using Arti in
development modes to provide feedback. To that end, using Arti is now
possible, in parallel, to the existing C-Tor support.

Running `make dev-arti` should give exactly the same experience as the
existing `make dev-tor` endpoint, aside from the inital launch, which
will be slower since it needs to compile Arti from scratch.

As an intentional choice, we don't version pin Arti since this is an
experimental thing, so it's more beneficial we just automatically stay
on the latest version and fix breakage instead of needing to constantly
bump versions.

Note that `make dev-tor` is entirely independent from this, so the two
commands will serve the dev server on different onion addresses.

As far as the Arti code itself, generating a config.toml file seems much
cleaner than adding to `torrc` and generating `.auth` files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Ready For Review
Development

Successfully merging this pull request may close these issues.

1 participant